As computer systems have advanced, processing power and speed have increased substantially. At the same time, computer system complexity and the number of components included in a computer system have increased significantly. System design has correspondingly increased in complexity as more and more increasingly complex components are used in a given computer system.
In order to accelerate the development process, computer systems and the corresponding components are simulated. A computer system may have several buses that allow the various components of the computer system to communicate. Unfortunately, many component simulations have been designed around different protocols and are not able to natively communicate with each other.
Conventional solutions have involved creation of dedicated conversion components to handle conversion of communications between the numerous protocols of the components. These conversion components need to be created for each protocol pair resulting in complex conversions and a large validation space to ensure protocol compliance at both ends. For example, for n communication protocols a total of 2*(n*(n−1) conversion components need to be developed and verified. The use of a large number of conversion components often negatively impacts the efficiency of the simulation. Often such components are custom and hard coded involving significant development time and reducing flexibility thereby necessitating significant reworking for interface changes.
Thus, a need exists for a solution to allow conversion of communication protocols without dedicated fixed logic conversion components.